.form {
  width: 100%;
  box-sizing: border-box;

  display: flex;
  flex-direction: column;
  padding: 24px 16px 50px;
  width: 100%;

  .info-item {
    padding: 16px 0;
    border-bottom: 1px solid #ebebeb;

    &__right {
      font-size: 14px;
    }
  }

  .info-item--date {
    display: grid;
    grid-template:
      'title right' min-content
      'picker picker' min-content
      / min-content 1fr;

    .info-item__label {
      grid-area: title;
      width: max-content;

      // 文字强制不换行
      white-space: nowrap;
      font-size: 14px;
      color: #333;
    }

    .info-item__right {
      grid-area: right;
      justify-self: end;

      display: flex;
      align-items: center;
      column-gap: 8px;

      font-weight: bold;
      .icon {
        width: 16px;
        height: 16px;
      }
    }

    .info-item__picker {
      grid-area: picker;

      width: 100%;
      height: 190px;
    }

    &.fold {
      grid-template:
        'title right' min-content
        / min-content 1fr;
      .info-item__right {
        .icon {
          transform: rotate(-90deg);
        }
      }
    }
  }

  .info-item--address,
  .info-item--type {
    padding: 16px 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 8px;

    .info-item__label {
      width: max-content;

      // 文字强制不换行
      white-space: nowrap;
      font-size: 14px;
      color: #333;
    }
  }

  .info-item--address {
    .info-item__right {
      display: flex;
      align-items: center;
      justify-content: space-between;
      column-gap: 8px;

      &.placeholder {
        color: #999999;
        font-size: 14px;
      }

      .icon {
        width: 16px;
        height: 16px;
      }
    }
  }

  .info-item--type {
    --radio-label-color: #999;
    --padding-sm: 0;
    --radio-label-margin: 0;

    .radio__wrap {
      margin-left: 17px;
      flex-direction: row-reverse;
      column-gap: 9px;
      .van-radio__icon-wrap {
        display: flex;
      }
      .radio__label {
        font-size: 14px;
      }
    }
  }

  .info-item--customer-info,
  .info-item--receipt-status {
    .info-item__title {
      font-size: 14px;
      font-weight: bold;
      color: #333;

      .icon {
        width: 12px;
        height: 12px;
      }
    }
  }

  .info-item--customer-info {
    display: grid;
    grid-template:
      'title title' min-content
      'name phone' min-content
      / 2fr 3fr;
    gap: 24px 22px;

    .info-item__title {
      grid-area: title;

      border-right: solid 1px #ebebeb;
    }

    .info-item__name {
      grid-area: name;

      border-right: solid 1px #ebebeb;
    }

    .info-item__phone {
      grid-area: phone;
    }

    .info-item__name,
    .info-item__phone {
      width: 100%;
      font-size: 14px;
    }

    &.fold {
      grid-template:
        'title title' min-content
        / 2fr 3fr;

      .info-item__title {
        .icon {
          transform: rotate(-90deg);
        }
      }

      .info-item__name,
      .info-item__phone {
        display: none;
      }
    }
  }

  .info-item--receipt-status {
    border-bottom: none;

    display: grid;
    grid-template:
      'title check-box' min-content
      '. .' 24px
      'total-price total-price' min-content
      '. .' 24px
      'deposit deposit' min-content
      / 1fr min-content;

    .info-item__title {
      grid-area: title;
    }

    .info-item__check-box {
      --checkbox-label-color: #999;

      grid-area: check-box;

      width: 80px;
      font-size: 14px;

      .check-box__wrap {
        justify-content: flex-end;
      }
    }

    .info-item__total-price {
      grid-area: total-price;
    }

    .info-item__deposit {
      grid-area: deposit;
    }

    .info-item__total-price,
    .info-item__deposit {
      border-bottom: 1px solid #ebebeb;
      padding-bottom: 16px;
      display: flex;
      justify-content: space-between;
      align-items: center;

      font-size: 14px;

      .input {
        flex: 1;
        text-align: right;
      }
    }

    &.fold {
      grid-template:
        'title check-box' min-content
        / 1fr min-content;

      .info-item__title {
        .icon {
          transform: rotate(-90deg);
        }
      }

      .info-item__total-price,
      .info-item__deposit {
        display: none;
      }
    }
  }

  .info-item--remark {
    margin-top: 8px;
    width: 100%;
    min-height: 144px;

    border: 0.5px solid #e5e5e5;
    border-radius: 8px;

    padding: 16px;

    position: relative;

    &::after {
      position: absolute;
      right: 12px;
      bottom: 12px;

      content: attr(data-length) '/' attr(maxlength);

      font-size: 12px;
      color: #999;
    }
  }

  .btn-list {
    display: flex;
    justify-content: space-around;

    .btn {
      width: 124px;
      height: 40px;
      border-radius: 20px;

      display: flex;
      justify-content: center;
      align-items: center;

      font-size: 16px;
      color: #fff;

      &--delete {
        background-color: #bebebe;
      }

      &--confirm {
        background: linear-gradient(99deg, #ff457a, #ff759d 100%);
      }
    }
  }
}
